package com.hdu.xxl_job_client.enums;

/**
 * 路由策略
 */
public enum ExecutorRouteStrategyEnum {
    // 根据执行器的顺序，选择第一个可用的执行器
    FIRST,
    // 根据执行器的顺序，选择最后一个可用的执行器
    LAST,
    // 轮询选择执行器，使每个执行器都有机会执行任务
    ROUND,
    // 随机选择一个执行器执行任务
    RANDOM,
    // 使用一致性哈希算法选择执行器，确保相同的关键字总是路由到同一个执行器，以实现负载均衡
    CONSISTENT_HASH,
    // 选择使用频率最低的执行器执行任务，以实现负载均衡
    LEAST_FREQUENTLY_USED,
    // 选择最近最少使用的执行器执行任务，以实现负载均衡
    LEAST_RECENTLY_USED,
    // 当主要执行器失败时，选择备用执行器执行任务
    FAILOVER,
    // 当执行器繁忙时，选择备用执行器执行任务
    BUSYOVER,
    // 对任务进行分片，并将每个分片广播到所有执行器，以实现并行处理
    SHARDING_BROADCAST
}

